package com.hyfrogx.modules.manage.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hyfrogx.common.utils.QueryExt;
import com.hyfrogx.common.utils.R;
import com.hyfrogx.modules.manage.entity.CoindogLiveEntity;
import com.hyfrogx.modules.manage.form.flash.FlashVo;

import java.util.List;
import java.util.Map;

/**
 * @version 1.0.0
 * @Author: lfh
 * @Date: 2019/9/27 15:38
 * @Company 汉咏科技
 */
public interface HyFlashLiveService extends IService<CoindogLiveEntity> {

    /**
     * 从数据库分页读取快讯信息
     * @param queryExt
     * @param map
     * @return
     */
    IPage<FlashVo> getByPageFromSql(QueryExt queryExt, Map map);

    /**
     * 获取最新快讯存储到数据库
     * @return
     */
    R getCoindog();

    /**
     * 修改单条快讯
     * @param coindogLiveEntity
     * @return
     */
    Boolean updateLiveOne(CoindogLiveEntity coindogLiveEntity);

    /**
     * 修改多条快讯
     * @param coindogLiveEntities
     */
    Boolean updateLiveList(List<CoindogLiveEntity> coindogLiveEntities);

    /**
     * 修改单个快讯状态
     * @param id
     * @return
     */
    Boolean updateStatusOne(Long id);

    /**
     * 批量删除快讯（物理删除）
     * @param id
     */
    void deleteLiveList(Long[] id);

    /**
     * 删除单个快讯（物理删除）
     * @param id
     * @return
     */
    Boolean deleteLiveOne(Long id);

    /**
     * 批量上架快讯
     * @param id
     */
    void LiveUpList(Long[] id);

    void LiveDownList(Long[] id);
}
